package com.dj.mingkong.portal.biz.service.music;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dj.mingkong.portal.biz.controller.music.vo.request.AlbumCollectAddVo;
import com.dj.mingkong.portal.biz.controller.music.vo.request.AlbumCollectCancelVo;
import com.dj.mingkong.portal.biz.controller.music.vo.request.AlbumCollectQueryVo;
import com.dj.mingkong.portal.biz.controller.music.vo.response.AlbumCollectDetailVo;
import com.dj.mingkong.portal.biz.controller.music.vo.response.AlbumCollectVo;

/**
 * 专辑收藏服务接口
 *
 * @author zenglonghui
 * @date: 2022/8/25 9:26
 */
public interface AlbumCollectService {
    /**
     * 收藏专辑
     *
     * @param addVo {}
     */
    void handle(AlbumCollectAddVo addVo);

    /**
     * 获取收藏信息
     *
     * @param albumId 专辑ID
     * @return AlbumCollectVo
     */
    AlbumCollectDetailVo getAlbumCollect(Long albumId);

    /**
     * 添加专辑收藏
     *
     * @param addVo {}
     */
    void add(AlbumCollectAddVo addVo);

    /**
     * 分页获取我收藏的专辑
     *
     * @param queryVo {}
     * @return AlbumVo
     */
    Page<AlbumCollectVo> pageByVo(AlbumCollectQueryVo queryVo);

    /**
     * 取消收藏
     *
     * @param cancelVo {}
     */
    void cancel(AlbumCollectCancelVo cancelVo);
}
